With a progress of a semiconductor technology in recent years, a multicore processor integrating a plurality of cores on one die, or a memory controller integrated processor mounting a memory controller on a processor die has appeared. In order to effectively utilize computer resources integrated in this way, a movement of reducing cost by integrating processings dispersed to a plurality of servers in a background art to one server is frequently observed. Means which becomes effective in integrating servers in this way is a method of operating a plurality of operating systems on one piece of server by server division. In server division, there are a physical division system of supporting division by hardware by a node unit, or a component unit of a processor (core) or I/O device, and a logical division system realized by a firmware referred to as a hypervisor or virtual machine monitor.
According to the logical division system, respective operating systems (guest OS) are executed on a logical processor provided by a virtual machine monitor, and by mapping a plurality of logical processors to a physical processor by the virtual machine monitor, a section can be divided to a unit finer than a node. Further, with regard to the processor (core), the respective operating systems can also be executed while switching one physical processor (core) among a plurality of logical sections by time sharing. Thereby, a number of logical sections the number of which is larger than the number of the physical processors (cores) can be formed to simultaneously be executed. As virtual machine monitor software constituting an object by logical division, a technology described in U.S. Pat. No. 6,496,847 is representative.
However, in comparison with a processor or a memory in which highly integrated formation is comparatively easy, with regard to I/O device which is essentially difficult to be integrated since it is necessary to provide a port (path) of input/output, a number thereof cannot be reduced and a tendency of deteriorating a balance between CPU and I/O device of the background art is observed. In order to increase a number of I/O devices, a countermeasure of increasing slots by using I/O switches is conceivable. However, by increasing a distance between a processor or a memory and I/O device by I/O switch, there is brought about a case in which I/O function cannot sufficiently be extracted.
Hence, approach of ensuring a sufficient I/O function by making I/O device shared by a plurality of virtual servers in the background art exclusive for a specific virtual server has been adopted. As a function of supporting to make I/O device exclusive by virtual server in this way, VT-d established by Intel corp. or the like is known as disclosed in Intel Virtualization Technology for Directed I/O Architecture Specification [online], Intel Corp., searched on Aug. 24, 2007, internet ftp://download.intel.com/techynology/computing/vptech/Intel (r)_VT_for_Direct_IO.pdf>.
On the other hand, by progress of multicore formation or an appearance of a processor integrated with a memory controller, there is a tendency that an arrangement of resources of processors, memories, I/O devices becomes unbalanced. In order to ensure a function and reliability on such an unbalanced system, a distribution of resources using physical position information is needed. According to OS of the background art, there is a device referred to as Affinity control of corresponding specific processor and memory and in order to support the control, as a standard interface for acquiring physical position information, ACPI (Advanced Configuration and Power Interface) is rectified (Advanced Configuration and Power Interface Specification Revision 3.0, [online], Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba, searched on Aug. 24, 2007, internet <http://www.acpi.info/>. According to the affinity control, resource are allocated by relating which CPU and memory OS or application uses.